package io;

import java.io.*;

/**
 * 缓冲流:是一对高级流,作用是加快读写效率
 * 1)BufferedInputStream 缓冲输入流
 * 2)BufferedOutputStream 缓冲输出流
 * 缓冲流读写效率快的原因
 * 1)缓冲流的内部有一个8kb的字节数组,
 *      看着是一个字节一个字节读写,
 *      但缓冲流底层已经把他转换为块读写了
 */
public class CopyDemo3Buffered {
    public static void main(String[] args) throws IOException {
        FileInputStream fis=new FileInputStream("./yy.jpg");
        FileOutputStream fos=new FileOutputStream("./p.jpg");
        BufferedInputStream bis=new BufferedInputStream(fis);
        BufferedOutputStream bos=new BufferedOutputStream(fos);
        int a;
        while ((a=bis.read())!=-1){//使用缓冲流读取字节
            bos.write(a);//使用缓冲流写出字节
        }
        System.out.println("复制完毕");
        bis.close();//只需要关闭高级流
        bos.close();
    }
}
